This invention relates generally to voltage controlled oscillators (VCOs) and relates more particularly to a method for approximating sinusoidal waveforms with trapezoidal waveforms in a manner which can be implemented within an arithmetic logic unit (ALU) structure.
VCOs are used in many applications, such as frequency synthesis, modulation, demodulation, frequency multiplication and clock synchronization. VCOs are often used as part of a phase lock loop in such applications. As the name implies, a voltage is used to control the frequency of the VCO's output signal.
Many VCOs are analog devices which require circuitry dedicated to the particular function involved and can generate a range of frequencies determined by the characteristics of the resistors, capacitors, transistors and other devices used.
Other VCOs are digital devices which generate square waves or triangular waves. Square waves and triangular waves have harmonic frequencies with significant amplitudes and thus their suitability for many applications is limited.
It is known that a trapezoidal waveform can be produced by a digital VCO, and that a trapezoidal waveform has harmonics that are smaller than those of a square wave or a triangular wave. The known method uses a digital circuit which, in a succession of equal time intervals, first generates a point on a triangular waveform having a period equal to that of the sinusoidal waveform being approximated, and then generates a corresponding point on a trapezoidal waveform. A positively sloped portion of the triangular waveform is defined by repetitiously adding an incremental value until the ALU saturates at its maximum value. A negatively sloped portion of the triangular waveform is then defined by repetitiously subtracting the incremental value until the ALU saturates at its minimum value. The trapezoidal waveform is created by truncating the peaks of the triangular waveform.
The incremental value chosen must be small in order to minimize the phase error introduced by the amount of the incremental value in excess of the maximum amplitude at the saturation point of the ALU. Because the size of the incremental value is so limited, the range of frequencies that can be generated by this method is limited. This is because for high frequencies, a much higher sampling rate must be used to generate small incremental values relative to the period of the generated signal. The disadvantage of a large sampling rate is that a large number of calculations are required, thus reducing the availability of the ALU for other calculations. The present invention substantially mitigates or solves these problems.